#ifndef CUFFTDX_FFT_10000_FP64_FWD_PTX_HPP
#define CUFFTDX_FFT_10000_FP64_FWD_PTX_HPP



template<> __forceinline__ __device__ void cufftdx_private_function<1166, double, 1>(cufftdx::detail::complex<double> *rmem, unsigned smem){

asm volatile (R"({
.reg .b32 r<23>;
.reg .f64 fd<937>;
.reg .b64 rd<17>;
mov.u32 r1, %tid.y;
mov.u32 r2, %20;
mad.lo.s32 r3, r1, 160000, r2;
mov.u32 r4, %tid.x;
add.f64 fd41, %29, %45;
add.f64 fd42, %24, fd41;
add.f64 fd43, %34, %40;
add.f64 fd44, fd43, fd42;
add.f64 fd45, %31, %47;
add.f64 fd46, %25, fd45;
add.f64 fd47, %36, %41;
add.f64 fd48, fd47, fd46;
fma.rn.f64 fd49, fd41, 0d3FD3C6EF372FE950, %24;
mul.f64 fd50, fd43, 0d3FE9E3779B97F4A8;
sub.f64 fd51, fd49, fd50;
sub.f64 fd52, %31, %47;
mul.f64 fd53, fd52, 0d3FEE6F0E134454FF;
sub.f64 fd54, %36, %41;
mul.f64 fd55, fd54, 0dBFE2CF2304755A5E;
sub.f64 fd56, fd55, fd53;
sub.f64 fd57, fd51, fd56;
add.f64 fd58, fd56, fd51;
mul.f64 fd59, fd41, 0d3FE9E3779B97F4A8;
sub.f64 fd60, %24, fd59;
fma.rn.f64 fd61, fd43, 0d3FD3C6EF372FE950, fd60;
mul.f64 fd62, fd52, 0d3FE2CF2304755A5E;
mul.f64 fd63, fd54, 0d3FEE6F0E134454FF;
sub.f64 fd64, fd63, fd62;
sub.f64 fd65, fd61, fd64;
add.f64 fd66, fd64, fd61;
fma.rn.f64 fd67, fd45, 0d3FD3C6EF372FE950, %25;
mul.f64 fd68, fd47, 0d3FE9E3779B97F4A8;
sub.f64 fd69, fd67, fd68;
sub.f64 fd70, %29, %45;
mul.f64 fd71, fd70, 0d3FEE6F0E134454FF;
sub.f64 fd72, %34, %40;
mul.f64 fd73, fd72, 0dBFE2CF2304755A5E;
sub.f64 fd74, fd73, fd71;
add.f64 fd75, fd74, fd69;
sub.f64 fd76, fd69, fd74;
mul.f64 fd77, fd45, 0d3FE9E3779B97F4A8;
sub.f64 fd78, %25, fd77;
fma.rn.f64 fd79, fd47, 0d3FD3C6EF372FE950, fd78;
mul.f64 fd80, fd70, 0d3FE2CF2304755A5E;
mul.f64 fd81, fd72, 0d3FEE6F0E134454FF;
sub.f64 fd82, fd81, fd80;
add.f64 fd83, fd82, fd79;
sub.f64 fd84, fd79, fd82;
add.f64 fd85, %32, %48;
add.f64 fd86, %26, fd85;
add.f64 fd87, %37, %42;
add.f64 fd88, fd87, fd86;
add.f64 fd89, %33, %49;
add.f64 fd90, %28, fd89;
add.f64 fd91, %39, %44;
add.f64 fd92, fd91, fd90;
fma.rn.f64 fd93, fd85, 0d3FD3C6EF372FE950, %26;
mul.f64 fd94, fd87, 0d3FE9E3779B97F4A8;
sub.f64 fd95, fd93, fd94;
sub.f64 fd96, %33, %49;
mul.f64 fd97, fd96, 0d3FEE6F0E134454FF;
sub.f64 fd98, %39, %44;
mul.f64 fd99, fd98, 0dBFE2CF2304755A5E;
sub.f64 fd100, fd99, fd97;
sub.f64 fd101, fd95, fd100;
add.f64 fd102, fd100, fd95;
mul.f64 fd103, fd85, 0d3FE9E3779B97F4A8;
sub.f64 fd104, %26, fd103;
fma.rn.f64 fd105, fd87, 0d3FD3C6EF372FE950, fd104;
mul.f64 fd106, fd96, 0d3FE2CF2304755A5E;
mul.f64 fd107, fd98, 0d3FEE6F0E134454FF;
sub.f64 fd108, fd107, fd106;
sub.f64 fd109, fd105, fd108;
add.f64 fd110, fd108, fd105;
fma.rn.f64 fd111, fd89, 0d3FD3C6EF372FE950, %28;
mul.f64 fd112, fd91, 0d3FE9E3779B97F4A8;
sub.f64 fd113, fd111, fd112;
sub.f64 fd114, %32, %48;
mul.f64 fd115, fd114, 0d3FEE6F0E134454FF;
sub.f64 fd116, %37, %42;
mul.f64 fd117, fd116, 0dBFE2CF2304755A5E;
sub.f64 fd118, fd117, fd115;
add.f64 fd119, fd118, fd113;
sub.f64 fd120, fd113, fd118;
mul.f64 fd121, fd89, 0d3FE9E3779B97F4A8;
sub.f64 fd122, %28, fd121;
fma.rn.f64 fd123, fd91, 0d3FD3C6EF372FE950, fd122;
mul.f64 fd124, fd114, 0d3FE2CF2304755A5E;
mul.f64 fd125, fd116, 0d3FEE6F0E134454FF;
sub.f64 fd126, fd125, fd124;
add.f64 fd127, fd126, fd123;
sub.f64 fd128, fd123, fd126;
mul.f64 fd129, fd101, 0d3FE9E3779B97F4A8;
mul.f64 fd130, fd119, 0dBFE2CF2304755A5E;
sub.f64 fd131, fd129, fd130;
mul.f64 fd132, fd119, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd133, fd101, 0dBFE2CF2304755A5E, fd132;
mul.f64 fd134, fd109, 0d3FD3C6EF372FE950;
mul.f64 fd135, fd127, 0dBFEE6F0E134454FF;
sub.f64 fd136, fd134, fd135;
mul.f64 fd137, fd127, 0d3FD3C6EF372FE950;
fma.rn.f64 fd138, fd109, 0dBFEE6F0E134454FF, fd137;
mul.f64 fd139, fd110, 0dBFD3C6EF372FE950;
mul.f64 fd140, fd128, 0dBFEE6F0E134454FF;
sub.f64 fd141, fd139, fd140;
mul.f64 fd142, fd128, 0dBFD3C6EF372FE950;
fma.rn.f64 fd143, fd110, 0dBFEE6F0E134454FF, fd142;
mul.f64 fd144, fd102, 0dBFE9E3779B97F4A8;
mul.f64 fd145, fd120, 0dBFE2CF2304755A5E;
sub.f64 fd146, fd144, fd145;
mul.f64 fd147, fd120, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd148, fd102, 0dBFE2CF2304755A5E, fd147;
sub.f64 fd149, fd44, fd88;
sub.f64 fd150, fd48, fd92;
add.f64 fd151, fd57, fd131;
add.f64 fd152, fd75, fd133;
sub.f64 fd153, fd57, fd131;
sub.f64 fd154, fd75, fd133;
add.f64 fd155, fd65, fd136;
add.f64 fd156, fd83, fd138;
sub.f64 fd157, fd65, fd136;
sub.f64 fd158, fd83, fd138;
add.f64 fd159, fd66, fd141;
add.f64 fd160, fd84, fd143;
sub.f64 fd161, fd66, fd141;
sub.f64 fd162, fd84, fd143;
add.f64 fd163, fd58, fd146;
add.f64 fd164, fd76, fd148;
sub.f64 fd165, fd58, fd146;
sub.f64 fd166, fd76, fd148;
mul.wide.u32 rd2, r4, 274877907;
shr.u64 rd3, rd2, 38;
cvt.u32.u64 r5, rd3;
mul.lo.s32 r6, r5, 1000;
sub.s32 r7, r4, r6;
mad.lo.s32 r8, r5, 160000, r3;
mul.wide.u32 rd4, r7, 16;
mov.u64 rd5, %21;
add.s64 rd6, rd5, rd4;
ld.global.v2.f64 {fd167, fd168}, [rd6];
mul.f64 fd171, fd167, fd151;
mul.f64 fd172, fd168, fd152;
mul.f64 fd173, fd167, fd152;
mul.f64 fd174, fd167, fd167;
mul.f64 fd175, fd168, fd168;
sub.f64 fd176, fd174, fd175;
mul.f64 fd177, fd168, fd167;
fma.rn.f64 fd178, fd168, fd167, fd177;
mul.f64 fd179, fd176, fd155;
mul.f64 fd180, fd178, fd156;
mul.f64 fd181, fd176, fd156;
mul.f64 fd182, fd167, fd176;
mul.f64 fd183, fd168, fd178;
sub.f64 fd184, fd182, fd183;
mul.f64 fd185, fd167, fd178;
fma.rn.f64 fd186, fd168, fd176, fd185;
mul.f64 fd187, fd184, fd159;
mul.f64 fd188, fd186, fd160;
mul.f64 fd189, fd184, fd160;
mul.f64 fd190, fd167, fd184;
mul.f64 fd191, fd168, fd186;
sub.f64 fd192, fd190, fd191;
mul.f64 fd193, fd167, fd186;
fma.rn.f64 fd194, fd168, fd184, fd193;
mul.f64 fd195, fd192, fd163;
mul.f64 fd196, fd194, fd164;
mul.f64 fd197, fd192, fd164;
mul.f64 fd198, fd167, fd192;
mul.f64 fd199, fd168, fd194;
sub.f64 fd200, fd198, fd199;
mul.f64 fd201, fd167, fd194;
fma.rn.f64 fd202, fd168, fd192, fd201;
mul.f64 fd203, fd200, fd149;
mul.f64 fd204, fd202, fd150;
mul.f64 fd205, fd200, fd150;
ld.global.v2.f64 {fd206, fd207}, [rd6+16000];
mul.f64 fd210, fd206, fd153;
mul.f64 fd211, fd207, fd154;
mul.f64 fd212, fd206, fd154;
mul.f64 fd213, fd167, fd206;
mul.f64 fd214, fd168, fd207;
sub.f64 fd215, fd213, fd214;
mul.f64 fd216, fd167, fd207;
fma.rn.f64 fd217, fd168, fd206, fd216;
mul.f64 fd218, fd215, fd157;
mul.f64 fd219, fd217, fd158;
mul.f64 fd220, fd215, fd158;
mul.f64 fd221, fd167, fd215;
mul.f64 fd222, fd168, fd217;
sub.f64 fd223, fd221, fd222;
mul.f64 fd224, fd167, fd217;
fma.rn.f64 fd225, fd168, fd215, fd224;
mul.f64 fd226, fd223, fd161;
mul.f64 fd227, fd225, fd162;
mul.f64 fd228, fd223, fd162;
mul.f64 fd229, fd167, fd223;
mul.f64 fd230, fd168, fd225;
sub.f64 fd231, fd229, fd230;
mul.f64 fd232, fd167, fd225;
fma.rn.f64 fd233, fd168, fd223, fd232;
mul.f64 fd234, fd231, fd165;
mul.f64 fd235, fd233, fd166;
mul.f64 fd236, fd231, fd166;
barrier.sync 0;
mad.lo.s32 r9, r7, 160, r8;
add.f64 fd237, fd48, fd92;
add.f64 fd238, fd44, fd88;
st.shared.v2.f64 [r9], {fd238, fd237};
fma.rn.f64 fd239, fd168, fd151, fd173;
sub.f64 fd240, fd171, fd172;
st.shared.v2.f64 [r9+16], {fd240, fd239};
fma.rn.f64 fd241, fd178, fd155, fd181;
sub.f64 fd242, fd179, fd180;
st.shared.v2.f64 [r9+32], {fd242, fd241};
fma.rn.f64 fd243, fd186, fd159, fd189;
sub.f64 fd244, fd187, fd188;
st.shared.v2.f64 [r9+48], {fd244, fd243};
sub.f64 fd245, fd195, fd196;
fma.rn.f64 fd246, fd194, fd163, fd197;
st.shared.v2.f64 [r9+64], {fd245, fd246};
fma.rn.f64 fd247, fd202, fd149, fd205;
sub.f64 fd248, fd203, fd204;
st.shared.v2.f64 [r9+80], {fd248, fd247};
fma.rn.f64 fd249, fd207, fd153, fd212;
sub.f64 fd250, fd210, fd211;
st.shared.v2.f64 [r9+96], {fd250, fd249};
fma.rn.f64 fd251, fd217, fd157, fd220;
sub.f64 fd252, fd218, fd219;
st.shared.v2.f64 [r9+112], {fd252, fd251};
fma.rn.f64 fd253, fd225, fd161, fd228;
sub.f64 fd254, fd226, fd227;
st.shared.v2.f64 [r9+128], {fd254, fd253};
sub.f64 fd255, fd234, fd235;
fma.rn.f64 fd256, fd233, fd165, fd236;
st.shared.v2.f64 [r9+144], {fd255, fd256};
barrier.sync 0;
mad.lo.s32 r10, r7, -144, r9;
ld.shared.v2.f64 {fd257, fd258}, [r10];
ld.shared.v2.f64 {fd261, fd262}, [r10+16000];
ld.shared.v2.f64 {fd265, fd266}, [r10+32000];
ld.shared.v2.f64 {fd269, fd270}, [r10+48000];
ld.shared.v2.f64 {fd273, fd274}, [r10+64000];
ld.shared.v2.f64 {fd277, fd278}, [r10+80000];
ld.shared.v2.f64 {fd281, fd282}, [r10+96000];
ld.shared.v2.f64 {fd285, fd286}, [r10+112000];
ld.shared.v2.f64 {fd289, fd290}, [r10+128000];
ld.shared.v2.f64 {fd293, fd294}, [r10+144000];
add.f64 fd297, fd265, fd289;
add.f64 fd298, fd257, fd297;
add.f64 fd299, fd273, fd281;
add.f64 fd300, fd299, fd298;
add.f64 fd301, fd266, fd290;
add.f64 fd302, fd258, fd301;
add.f64 fd303, fd274, fd282;
add.f64 fd304, fd303, fd302;
fma.rn.f64 fd305, fd297, 0d3FD3C6EF372FE950, fd257;
mul.f64 fd306, fd299, 0d3FE9E3779B97F4A8;
sub.f64 fd307, fd305, fd306;
sub.f64 fd308, fd266, fd290;
mul.f64 fd309, fd308, 0d3FEE6F0E134454FF;
sub.f64 fd310, fd274, fd282;
mul.f64 fd311, fd310, 0dBFE2CF2304755A5E;
sub.f64 fd312, fd311, fd309;
sub.f64 fd313, fd307, fd312;
add.f64 fd314, fd312, fd307;
mul.f64 fd315, fd297, 0d3FE9E3779B97F4A8;
sub.f64 fd316, fd257, fd315;
fma.rn.f64 fd317, fd299, 0d3FD3C6EF372FE950, fd316;
mul.f64 fd318, fd308, 0d3FE2CF2304755A5E;
mul.f64 fd319, fd310, 0d3FEE6F0E134454FF;
sub.f64 fd320, fd319, fd318;
sub.f64 fd321, fd317, fd320;
add.f64 fd322, fd320, fd317;
fma.rn.f64 fd323, fd301, 0d3FD3C6EF372FE950, fd258;
mul.f64 fd324, fd303, 0d3FE9E3779B97F4A8;
sub.f64 fd325, fd323, fd324;
sub.f64 fd326, fd265, fd289;
mul.f64 fd327, fd326, 0d3FEE6F0E134454FF;
sub.f64 fd328, fd273, fd281;
mul.f64 fd329, fd328, 0dBFE2CF2304755A5E;
sub.f64 fd330, fd329, fd327;
add.f64 fd331, fd330, fd325;
sub.f64 fd332, fd325, fd330;
mul.f64 fd333, fd301, 0d3FE9E3779B97F4A8;
sub.f64 fd334, fd258, fd333;
fma.rn.f64 fd335, fd303, 0d3FD3C6EF372FE950, fd334;
mul.f64 fd336, fd326, 0d3FE2CF2304755A5E;
mul.f64 fd337, fd328, 0d3FEE6F0E134454FF;
sub.f64 fd338, fd337, fd336;
add.f64 fd339, fd338, fd335;
sub.f64 fd340, fd335, fd338;
add.f64 fd341, fd269, fd293;
add.f64 fd342, fd261, fd341;
add.f64 fd343, fd277, fd285;
add.f64 fd344, fd343, fd342;
add.f64 fd345, fd270, fd294;
add.f64 fd346, fd262, fd345;
add.f64 fd347, fd278, fd286;
add.f64 fd348, fd347, fd346;
fma.rn.f64 fd349, fd341, 0d3FD3C6EF372FE950, fd261;
mul.f64 fd350, fd343, 0d3FE9E3779B97F4A8;
sub.f64 fd351, fd349, fd350;
sub.f64 fd352, fd270, fd294;
mul.f64 fd353, fd352, 0d3FEE6F0E134454FF;
sub.f64 fd354, fd278, fd286;
mul.f64 fd355, fd354, 0dBFE2CF2304755A5E;
sub.f64 fd356, fd355, fd353;
sub.f64 fd357, fd351, fd356;
add.f64 fd358, fd356, fd351;
mul.f64 fd359, fd341, 0d3FE9E3779B97F4A8;
sub.f64 fd360, fd261, fd359;
fma.rn.f64 fd361, fd343, 0d3FD3C6EF372FE950, fd360;
mul.f64 fd362, fd352, 0d3FE2CF2304755A5E;
mul.f64 fd363, fd354, 0d3FEE6F0E134454FF;
sub.f64 fd364, fd363, fd362;
sub.f64 fd365, fd361, fd364;
add.f64 fd366, fd364, fd361;
fma.rn.f64 fd367, fd345, 0d3FD3C6EF372FE950, fd262;
mul.f64 fd368, fd347, 0d3FE9E3779B97F4A8;
sub.f64 fd369, fd367, fd368;
sub.f64 fd370, fd269, fd293;
mul.f64 fd371, fd370, 0d3FEE6F0E134454FF;
sub.f64 fd372, fd277, fd285;
mul.f64 fd373, fd372, 0dBFE2CF2304755A5E;
sub.f64 fd374, fd373, fd371;
add.f64 fd375, fd374, fd369;
sub.f64 fd376, fd369, fd374;
mul.f64 fd377, fd345, 0d3FE9E3779B97F4A8;
sub.f64 fd378, fd262, fd377;
fma.rn.f64 fd379, fd347, 0d3FD3C6EF372FE950, fd378;
mul.f64 fd380, fd370, 0d3FE2CF2304755A5E;
mul.f64 fd381, fd372, 0d3FEE6F0E134454FF;
sub.f64 fd382, fd381, fd380;
add.f64 fd383, fd382, fd379;
sub.f64 fd384, fd379, fd382;
mul.f64 fd385, fd357, 0d3FE9E3779B97F4A8;
mul.f64 fd386, fd375, 0dBFE2CF2304755A5E;
sub.f64 fd387, fd385, fd386;
mul.f64 fd388, fd375, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd389, fd357, 0dBFE2CF2304755A5E, fd388;
mul.f64 fd390, fd365, 0d3FD3C6EF372FE950;
mul.f64 fd391, fd383, 0dBFEE6F0E134454FF;
sub.f64 fd392, fd390, fd391;
mul.f64 fd393, fd383, 0d3FD3C6EF372FE950;
fma.rn.f64 fd394, fd365, 0dBFEE6F0E134454FF, fd393;
mul.f64 fd395, fd366, 0dBFD3C6EF372FE950;
mul.f64 fd396, fd384, 0dBFEE6F0E134454FF;
sub.f64 fd397, fd395, fd396;
mul.f64 fd398, fd384, 0dBFD3C6EF372FE950;
fma.rn.f64 fd399, fd366, 0dBFEE6F0E134454FF, fd398;
mul.f64 fd400, fd358, 0dBFE9E3779B97F4A8;
mul.f64 fd401, fd376, 0dBFE2CF2304755A5E;
sub.f64 fd402, fd400, fd401;
mul.f64 fd403, fd376, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd404, fd358, 0dBFE2CF2304755A5E, fd403;
sub.f64 fd405, fd300, fd344;
sub.f64 fd406, fd304, fd348;
add.f64 fd407, fd313, fd387;
add.f64 fd408, fd331, fd389;
sub.f64 fd409, fd313, fd387;
sub.f64 fd410, fd331, fd389;
add.f64 fd411, fd321, fd392;
add.f64 fd412, fd339, fd394;
sub.f64 fd413, fd321, fd392;
sub.f64 fd414, fd339, fd394;
add.f64 fd415, fd322, fd397;
add.f64 fd416, fd340, fd399;
sub.f64 fd417, fd322, fd397;
sub.f64 fd418, fd340, fd399;
add.f64 fd419, fd314, fd402;
add.f64 fd420, fd332, fd404;
sub.f64 fd421, fd314, fd402;
sub.f64 fd422, fd332, fd404;
mul.wide.u32 rd7, r7, -858993459;
shr.u64 rd8, rd7, 35;
cvt.u32.u64 r11, rd8;
mul.lo.s32 r12, r11, 10;
sub.s32 r13, r7, r12;
mul.wide.u32 rd9, r11, 16;
mov.u64 rd10, %22;
add.s64 rd11, rd10, rd9;
ld.global.v2.f64 {fd423, fd424}, [rd11];
mul.f64 fd427, fd423, fd407;
mul.f64 fd428, fd424, fd408;
mul.f64 fd429, fd423, fd408;
mul.f64 fd430, fd423, fd423;
mul.f64 fd431, fd424, fd424;
sub.f64 fd432, fd430, fd431;
mul.f64 fd433, fd424, fd423;
fma.rn.f64 fd434, fd424, fd423, fd433;
mul.f64 fd435, fd432, fd411;
mul.f64 fd436, fd434, fd412;
mul.f64 fd437, fd432, fd412;
mul.f64 fd438, fd423, fd432;
mul.f64 fd439, fd424, fd434;
sub.f64 fd440, fd438, fd439;
mul.f64 fd441, fd423, fd434;
fma.rn.f64 fd442, fd424, fd432, fd441;
mul.f64 fd443, fd440, fd415;
mul.f64 fd444, fd442, fd416;
mul.f64 fd445, fd440, fd416;
mul.f64 fd446, fd423, fd440;
mul.f64 fd447, fd424, fd442;
sub.f64 fd448, fd446, fd447;
mul.f64 fd449, fd423, fd442;
fma.rn.f64 fd450, fd424, fd440, fd449;
mul.f64 fd451, fd448, fd419;
mul.f64 fd452, fd450, fd420;
mul.f64 fd453, fd448, fd420;
mul.f64 fd454, fd423, fd448;
mul.f64 fd455, fd424, fd450;
sub.f64 fd456, fd454, fd455;
mul.f64 fd457, fd423, fd450;
fma.rn.f64 fd458, fd424, fd448, fd457;
mul.f64 fd459, fd456, fd405;
mul.f64 fd460, fd458, fd406;
mul.f64 fd461, fd456, fd406;
ld.global.v2.f64 {fd462, fd463}, [rd11+1600];
mul.f64 fd466, fd462, fd409;
mul.f64 fd467, fd463, fd410;
mul.f64 fd468, fd462, fd410;
mul.f64 fd469, fd423, fd462;
mul.f64 fd470, fd424, fd463;
sub.f64 fd471, fd469, fd470;
mul.f64 fd472, fd423, fd463;
fma.rn.f64 fd473, fd424, fd462, fd472;
mul.f64 fd474, fd471, fd413;
mul.f64 fd475, fd473, fd414;
mul.f64 fd476, fd471, fd414;
mul.f64 fd477, fd423, fd471;
mul.f64 fd478, fd424, fd473;
sub.f64 fd479, fd477, fd478;
mul.f64 fd480, fd423, fd473;
fma.rn.f64 fd481, fd424, fd471, fd480;
mul.f64 fd482, fd479, fd417;
mul.f64 fd483, fd481, fd418;
mul.f64 fd484, fd479, fd418;
mul.f64 fd485, fd423, fd479;
mul.f64 fd486, fd424, fd481;
sub.f64 fd487, fd485, fd486;
mul.f64 fd488, fd423, fd481;
fma.rn.f64 fd489, fd424, fd479, fd488;
mul.f64 fd490, fd487, fd421;
mul.f64 fd491, fd489, fd422;
mul.f64 fd492, fd487, fd422;
shl.b32 r14, r13, 4;
add.s32 r15, r8, r14;
barrier.sync 0;
mad.lo.s32 r16, r11, 1600, r15;
add.f64 fd493, fd304, fd348;
add.f64 fd494, fd300, fd344;
st.shared.v2.f64 [r16], {fd494, fd493};
fma.rn.f64 fd495, fd424, fd407, fd429;
sub.f64 fd496, fd427, fd428;
st.shared.v2.f64 [r16+160], {fd496, fd495};
fma.rn.f64 fd497, fd434, fd411, fd437;
sub.f64 fd498, fd435, fd436;
st.shared.v2.f64 [r16+320], {fd498, fd497};
fma.rn.f64 fd499, fd442, fd415, fd445;
sub.f64 fd500, fd443, fd444;
st.shared.v2.f64 [r16+480], {fd500, fd499};
fma.rn.f64 fd501, fd450, fd419, fd453;
sub.f64 fd502, fd451, fd452;
st.shared.v2.f64 [r16+640], {fd502, fd501};
sub.f64 fd503, fd459, fd460;
fma.rn.f64 fd504, fd458, fd405, fd461;
st.shared.v2.f64 [r16+800], {fd503, fd504};
fma.rn.f64 fd505, fd463, fd409, fd468;
sub.f64 fd506, fd466, fd467;
st.shared.v2.f64 [r16+960], {fd506, fd505};
fma.rn.f64 fd507, fd473, fd413, fd476;
sub.f64 fd508, fd474, fd475;
st.shared.v2.f64 [r16+1120], {fd508, fd507};
fma.rn.f64 fd509, fd481, fd417, fd484;
sub.f64 fd510, fd482, fd483;
st.shared.v2.f64 [r16+1280], {fd510, fd509};
fma.rn.f64 fd511, fd489, fd421, fd492;
sub.f64 fd512, fd490, fd491;
st.shared.v2.f64 [r16+1440], {fd512, fd511};
barrier.sync 0;
ld.shared.v2.f64 {fd513, fd514}, [r10];
ld.shared.v2.f64 {fd517, fd518}, [r10+16000];
ld.shared.v2.f64 {fd521, fd522}, [r10+32000];
ld.shared.v2.f64 {fd525, fd526}, [r10+48000];
ld.shared.v2.f64 {fd529, fd530}, [r10+64000];
ld.shared.v2.f64 {fd533, fd534}, [r10+80000];
ld.shared.v2.f64 {fd537, fd538}, [r10+96000];
ld.shared.v2.f64 {fd541, fd542}, [r10+112000];
ld.shared.v2.f64 {fd545, fd546}, [r10+128000];
ld.shared.v2.f64 {fd549, fd550}, [r10+144000];
add.f64 fd553, fd521, fd545;
add.f64 fd554, fd513, fd553;
add.f64 fd555, fd529, fd537;
add.f64 fd556, fd555, fd554;
add.f64 fd557, fd522, fd546;
add.f64 fd558, fd514, fd557;
add.f64 fd559, fd530, fd538;
add.f64 fd560, fd559, fd558;
fma.rn.f64 fd561, fd553, 0d3FD3C6EF372FE950, fd513;
mul.f64 fd562, fd555, 0d3FE9E3779B97F4A8;
sub.f64 fd563, fd561, fd562;
sub.f64 fd564, fd522, fd546;
mul.f64 fd565, fd564, 0d3FEE6F0E134454FF;
sub.f64 fd566, fd530, fd538;
mul.f64 fd567, fd566, 0dBFE2CF2304755A5E;
sub.f64 fd568, fd567, fd565;
sub.f64 fd569, fd563, fd568;
add.f64 fd570, fd568, fd563;
mul.f64 fd571, fd553, 0d3FE9E3779B97F4A8;
sub.f64 fd572, fd513, fd571;
fma.rn.f64 fd573, fd555, 0d3FD3C6EF372FE950, fd572;
mul.f64 fd574, fd564, 0d3FE2CF2304755A5E;
mul.f64 fd575, fd566, 0d3FEE6F0E134454FF;
sub.f64 fd576, fd575, fd574;
sub.f64 fd577, fd573, fd576;
add.f64 fd578, fd576, fd573;
fma.rn.f64 fd579, fd557, 0d3FD3C6EF372FE950, fd514;
mul.f64 fd580, fd559, 0d3FE9E3779B97F4A8;
sub.f64 fd581, fd579, fd580;
sub.f64 fd582, fd521, fd545;
mul.f64 fd583, fd582, 0d3FEE6F0E134454FF;
sub.f64 fd584, fd529, fd537;
mul.f64 fd585, fd584, 0dBFE2CF2304755A5E;
sub.f64 fd586, fd585, fd583;
add.f64 fd587, fd586, fd581;
sub.f64 fd588, fd581, fd586;
mul.f64 fd589, fd557, 0d3FE9E3779B97F4A8;
sub.f64 fd590, fd514, fd589;
fma.rn.f64 fd591, fd559, 0d3FD3C6EF372FE950, fd590;
mul.f64 fd592, fd582, 0d3FE2CF2304755A5E;
mul.f64 fd593, fd584, 0d3FEE6F0E134454FF;
sub.f64 fd594, fd593, fd592;
add.f64 fd595, fd594, fd591;
sub.f64 fd596, fd591, fd594;
add.f64 fd597, fd525, fd549;
add.f64 fd598, fd517, fd597;
add.f64 fd599, fd533, fd541;
add.f64 fd600, fd599, fd598;
add.f64 fd601, fd526, fd550;
add.f64 fd602, fd518, fd601;
add.f64 fd603, fd534, fd542;
add.f64 fd604, fd603, fd602;
fma.rn.f64 fd605, fd597, 0d3FD3C6EF372FE950, fd517;
mul.f64 fd606, fd599, 0d3FE9E3779B97F4A8;
sub.f64 fd607, fd605, fd606;
sub.f64 fd608, fd526, fd550;
mul.f64 fd609, fd608, 0d3FEE6F0E134454FF;
sub.f64 fd610, fd534, fd542;
mul.f64 fd611, fd610, 0dBFE2CF2304755A5E;
sub.f64 fd612, fd611, fd609;
sub.f64 fd613, fd607, fd612;
add.f64 fd614, fd612, fd607;
mul.f64 fd615, fd597, 0d3FE9E3779B97F4A8;
sub.f64 fd616, fd517, fd615;
fma.rn.f64 fd617, fd599, 0d3FD3C6EF372FE950, fd616;
mul.f64 fd618, fd608, 0d3FE2CF2304755A5E;
mul.f64 fd619, fd610, 0d3FEE6F0E134454FF;
sub.f64 fd620, fd619, fd618;
sub.f64 fd621, fd617, fd620;
add.f64 fd622, fd620, fd617;
fma.rn.f64 fd623, fd601, 0d3FD3C6EF372FE950, fd518;
mul.f64 fd624, fd603, 0d3FE9E3779B97F4A8;
sub.f64 fd625, fd623, fd624;
sub.f64 fd626, fd525, fd549;
mul.f64 fd627, fd626, 0d3FEE6F0E134454FF;
sub.f64 fd628, fd533, fd541;
mul.f64 fd629, fd628, 0dBFE2CF2304755A5E;
sub.f64 fd630, fd629, fd627;
add.f64 fd631, fd630, fd625;
sub.f64 fd632, fd625, fd630;
mul.f64 fd633, fd601, 0d3FE9E3779B97F4A8;
sub.f64 fd634, fd518, fd633;
fma.rn.f64 fd635, fd603, 0d3FD3C6EF372FE950, fd634;
mul.f64 fd636, fd626, 0d3FE2CF2304755A5E;
mul.f64 fd637, fd628, 0d3FEE6F0E134454FF;
sub.f64 fd638, fd637, fd636;
add.f64 fd639, fd638, fd635;
sub.f64 fd640, fd635, fd638;
mul.f64 fd641, fd613, 0d3FE9E3779B97F4A8;
mul.f64 fd642, fd631, 0dBFE2CF2304755A5E;
sub.f64 fd643, fd641, fd642;
mul.f64 fd644, fd631, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd645, fd613, 0dBFE2CF2304755A5E, fd644;
mul.f64 fd646, fd621, 0d3FD3C6EF372FE950;
mul.f64 fd647, fd639, 0dBFEE6F0E134454FF;
sub.f64 fd648, fd646, fd647;
mul.f64 fd649, fd639, 0d3FD3C6EF372FE950;
fma.rn.f64 fd650, fd621, 0dBFEE6F0E134454FF, fd649;
mul.f64 fd651, fd622, 0dBFD3C6EF372FE950;
mul.f64 fd652, fd640, 0dBFEE6F0E134454FF;
sub.f64 fd653, fd651, fd652;
mul.f64 fd654, fd640, 0dBFD3C6EF372FE950;
fma.rn.f64 fd655, fd622, 0dBFEE6F0E134454FF, fd654;
mul.f64 fd656, fd614, 0dBFE9E3779B97F4A8;
mul.f64 fd657, fd632, 0dBFE2CF2304755A5E;
sub.f64 fd658, fd656, fd657;
mul.f64 fd659, fd632, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd660, fd614, 0dBFE2CF2304755A5E, fd659;
sub.f64 fd661, fd556, fd600;
sub.f64 fd662, fd560, fd604;
add.f64 fd663, fd569, fd643;
add.f64 fd664, fd587, fd645;
sub.f64 fd665, fd569, fd643;
sub.f64 fd666, fd587, fd645;
add.f64 fd667, fd577, fd648;
add.f64 fd668, fd595, fd650;
sub.f64 fd669, fd577, fd648;
sub.f64 fd670, fd595, fd650;
add.f64 fd671, fd578, fd653;
add.f64 fd672, fd596, fd655;
sub.f64 fd673, fd578, fd653;
sub.f64 fd674, fd596, fd655;
add.f64 fd675, fd570, fd658;
add.f64 fd676, fd588, fd660;
sub.f64 fd677, fd570, fd658;
sub.f64 fd678, fd588, fd660;
mul.wide.u32 rd12, r7, 1374389535;
shr.u64 rd13, rd12, 37;
cvt.u32.u64 r17, rd13;
mul.lo.s32 r18, r17, 100;
sub.s32 r19, r7, r18;
mul.wide.u32 rd14, r17, 16;
mov.u64 rd15, %23;
add.s64 rd16, rd15, rd14;
ld.global.v2.f64 {fd679, fd680}, [rd16];
mul.f64 fd683, fd679, fd663;
mul.f64 fd684, fd680, fd664;
mul.f64 fd685, fd679, fd664;
mul.f64 fd686, fd679, fd679;
mul.f64 fd687, fd680, fd680;
sub.f64 fd688, fd686, fd687;
mul.f64 fd689, fd680, fd679;
fma.rn.f64 fd690, fd680, fd679, fd689;
mul.f64 fd691, fd688, fd667;
mul.f64 fd692, fd690, fd668;
mul.f64 fd693, fd688, fd668;
mul.f64 fd694, fd679, fd688;
mul.f64 fd695, fd680, fd690;
sub.f64 fd696, fd694, fd695;
mul.f64 fd697, fd679, fd690;
fma.rn.f64 fd698, fd680, fd688, fd697;
mul.f64 fd699, fd696, fd671;
mul.f64 fd700, fd698, fd672;
mul.f64 fd701, fd696, fd672;
mul.f64 fd702, fd679, fd696;
mul.f64 fd703, fd680, fd698;
sub.f64 fd704, fd702, fd703;
mul.f64 fd705, fd679, fd698;
fma.rn.f64 fd706, fd680, fd696, fd705;
mul.f64 fd707, fd704, fd675;
mul.f64 fd708, fd706, fd676;
mul.f64 fd709, fd704, fd676;
mul.f64 fd710, fd679, fd704;
mul.f64 fd711, fd680, fd706;
sub.f64 fd712, fd710, fd711;
mul.f64 fd713, fd679, fd706;
fma.rn.f64 fd714, fd680, fd704, fd713;
mul.f64 fd715, fd712, fd661;
mul.f64 fd716, fd714, fd662;
mul.f64 fd717, fd712, fd662;
ld.global.v2.f64 {fd718, fd719}, [rd16+160];
mul.f64 fd722, fd718, fd665;
mul.f64 fd723, fd719, fd666;
mul.f64 fd724, fd718, fd666;
mul.f64 fd725, fd679, fd718;
mul.f64 fd726, fd680, fd719;
sub.f64 fd727, fd725, fd726;
mul.f64 fd728, fd679, fd719;
fma.rn.f64 fd729, fd680, fd718, fd728;
mul.f64 fd730, fd727, fd669;
mul.f64 fd731, fd729, fd670;
mul.f64 fd732, fd727, fd670;
mul.f64 fd733, fd679, fd727;
mul.f64 fd734, fd680, fd729;
sub.f64 fd735, fd733, fd734;
mul.f64 fd736, fd679, fd729;
fma.rn.f64 fd737, fd680, fd727, fd736;
mul.f64 fd738, fd735, fd673;
mul.f64 fd739, fd737, fd674;
mul.f64 fd740, fd735, fd674;
mul.f64 fd741, fd679, fd735;
mul.f64 fd742, fd680, fd737;
sub.f64 fd743, fd741, fd742;
mul.f64 fd744, fd679, fd737;
fma.rn.f64 fd745, fd680, fd735, fd744;
mul.f64 fd746, fd743, fd677;
mul.f64 fd747, fd745, fd678;
mul.f64 fd748, fd743, fd678;
shl.b32 r20, r19, 4;
add.s32 r21, r8, r20;
barrier.sync 0;
mad.lo.s32 r22, r17, 16000, r21;
add.f64 fd749, fd560, fd604;
add.f64 fd750, fd556, fd600;
st.shared.v2.f64 [r22], {fd750, fd749};
fma.rn.f64 fd751, fd680, fd663, fd685;
sub.f64 fd752, fd683, fd684;
st.shared.v2.f64 [r22+1600], {fd752, fd751};
fma.rn.f64 fd753, fd690, fd667, fd693;
sub.f64 fd754, fd691, fd692;
st.shared.v2.f64 [r22+3200], {fd754, fd753};
fma.rn.f64 fd755, fd698, fd671, fd701;
sub.f64 fd756, fd699, fd700;
st.shared.v2.f64 [r22+4800], {fd756, fd755};
fma.rn.f64 fd757, fd706, fd675, fd709;
sub.f64 fd758, fd707, fd708;
st.shared.v2.f64 [r22+6400], {fd758, fd757};
sub.f64 fd759, fd715, fd716;
fma.rn.f64 fd760, fd714, fd661, fd717;
st.shared.v2.f64 [r22+8000], {fd759, fd760};
fma.rn.f64 fd761, fd719, fd665, fd724;
sub.f64 fd762, fd722, fd723;
st.shared.v2.f64 [r22+9600], {fd762, fd761};
fma.rn.f64 fd763, fd729, fd669, fd732;
sub.f64 fd764, fd730, fd731;
st.shared.v2.f64 [r22+11200], {fd764, fd763};
fma.rn.f64 fd765, fd737, fd673, fd740;
sub.f64 fd766, fd738, fd739;
st.shared.v2.f64 [r22+12800], {fd766, fd765};
fma.rn.f64 fd767, fd745, fd677, fd748;
sub.f64 fd768, fd746, fd747;
st.shared.v2.f64 [r22+14400], {fd768, fd767};
barrier.sync 0;
ld.shared.v2.f64 {fd769, fd770}, [r10];
ld.shared.v2.f64 {fd773, fd774}, [r10+16000];
ld.shared.v2.f64 {fd777, fd778}, [r10+32000];
ld.shared.v2.f64 {fd781, fd782}, [r10+48000];
ld.shared.v2.f64 {fd785, fd786}, [r10+64000];
ld.shared.v2.f64 {fd789, fd790}, [r10+80000];
ld.shared.v2.f64 {fd793, fd794}, [r10+96000];
ld.shared.v2.f64 {fd797, fd798}, [r10+112000];
ld.shared.v2.f64 {fd801, fd802}, [r10+128000];
ld.shared.v2.f64 {fd805, fd806}, [r10+144000];
add.f64 fd809, fd777, fd801;
add.f64 fd810, fd769, fd809;
add.f64 fd811, fd785, fd793;
add.f64 fd812, fd811, fd810;
add.f64 fd813, fd778, fd802;
add.f64 fd814, fd770, fd813;
add.f64 fd815, fd786, fd794;
add.f64 fd816, fd815, fd814;
fma.rn.f64 fd817, fd809, 0d3FD3C6EF372FE950, fd769;
mul.f64 fd818, fd811, 0d3FE9E3779B97F4A8;
sub.f64 fd819, fd817, fd818;
sub.f64 fd820, fd778, fd802;
mul.f64 fd821, fd820, 0d3FEE6F0E134454FF;
sub.f64 fd822, fd786, fd794;
mul.f64 fd823, fd822, 0dBFE2CF2304755A5E;
sub.f64 fd824, fd823, fd821;
sub.f64 fd825, fd819, fd824;
add.f64 fd826, fd824, fd819;
mul.f64 fd827, fd809, 0d3FE9E3779B97F4A8;
sub.f64 fd828, fd769, fd827;
fma.rn.f64 fd829, fd811, 0d3FD3C6EF372FE950, fd828;
mul.f64 fd830, fd820, 0d3FE2CF2304755A5E;
mul.f64 fd831, fd822, 0d3FEE6F0E134454FF;
sub.f64 fd832, fd831, fd830;
sub.f64 fd833, fd829, fd832;
add.f64 fd834, fd832, fd829;
fma.rn.f64 fd835, fd813, 0d3FD3C6EF372FE950, fd770;
mul.f64 fd836, fd815, 0d3FE9E3779B97F4A8;
sub.f64 fd837, fd835, fd836;
sub.f64 fd838, fd777, fd801;
mul.f64 fd839, fd838, 0d3FEE6F0E134454FF;
sub.f64 fd840, fd785, fd793;
mul.f64 fd841, fd840, 0dBFE2CF2304755A5E;
sub.f64 fd842, fd841, fd839;
add.f64 fd843, fd842, fd837;
sub.f64 fd844, fd837, fd842;
mul.f64 fd845, fd813, 0d3FE9E3779B97F4A8;
sub.f64 fd846, fd770, fd845;
fma.rn.f64 fd847, fd815, 0d3FD3C6EF372FE950, fd846;
mul.f64 fd848, fd838, 0d3FE2CF2304755A5E;
mul.f64 fd849, fd840, 0d3FEE6F0E134454FF;
sub.f64 fd850, fd849, fd848;
add.f64 fd851, fd850, fd847;
sub.f64 fd852, fd847, fd850;
add.f64 fd853, fd781, fd805;
add.f64 fd854, fd773, fd853;
add.f64 fd855, fd789, fd797;
add.f64 fd856, fd855, fd854;
add.f64 fd857, fd782, fd806;
add.f64 fd858, fd774, fd857;
add.f64 fd859, fd790, fd798;
add.f64 fd860, fd859, fd858;
fma.rn.f64 fd861, fd853, 0d3FD3C6EF372FE950, fd773;
mul.f64 fd862, fd855, 0d3FE9E3779B97F4A8;
sub.f64 fd863, fd861, fd862;
sub.f64 fd864, fd782, fd806;
mul.f64 fd865, fd864, 0d3FEE6F0E134454FF;
sub.f64 fd866, fd790, fd798;
mul.f64 fd867, fd866, 0dBFE2CF2304755A5E;
sub.f64 fd868, fd867, fd865;
sub.f64 fd869, fd863, fd868;
add.f64 fd870, fd868, fd863;
mul.f64 fd871, fd853, 0d3FE9E3779B97F4A8;
sub.f64 fd872, fd773, fd871;
fma.rn.f64 fd873, fd855, 0d3FD3C6EF372FE950, fd872;
mul.f64 fd874, fd864, 0d3FE2CF2304755A5E;
mul.f64 fd875, fd866, 0d3FEE6F0E134454FF;
sub.f64 fd876, fd875, fd874;
sub.f64 fd877, fd873, fd876;
add.f64 fd878, fd876, fd873;
fma.rn.f64 fd879, fd857, 0d3FD3C6EF372FE950, fd774;
mul.f64 fd880, fd859, 0d3FE9E3779B97F4A8;
sub.f64 fd881, fd879, fd880;
sub.f64 fd882, fd781, fd805;
mul.f64 fd883, fd882, 0d3FEE6F0E134454FF;
sub.f64 fd884, fd789, fd797;
mul.f64 fd885, fd884, 0dBFE2CF2304755A5E;
sub.f64 fd886, fd885, fd883;
add.f64 fd887, fd886, fd881;
sub.f64 fd888, fd881, fd886;
mul.f64 fd889, fd857, 0d3FE9E3779B97F4A8;
sub.f64 fd890, fd774, fd889;
fma.rn.f64 fd891, fd859, 0d3FD3C6EF372FE950, fd890;
mul.f64 fd892, fd882, 0d3FE2CF2304755A5E;
mul.f64 fd893, fd884, 0d3FEE6F0E134454FF;
sub.f64 fd894, fd893, fd892;
add.f64 fd895, fd894, fd891;
sub.f64 fd896, fd891, fd894;
mul.f64 fd897, fd869, 0d3FE9E3779B97F4A8;
mul.f64 fd898, fd887, 0dBFE2CF2304755A5E;
sub.f64 fd899, fd897, fd898;
mul.f64 fd900, fd887, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd901, fd869, 0dBFE2CF2304755A5E, fd900;
mul.f64 fd902, fd877, 0d3FD3C6EF372FE950;
mul.f64 fd903, fd895, 0dBFEE6F0E134454FF;
sub.f64 fd904, fd902, fd903;
mul.f64 fd905, fd895, 0d3FD3C6EF372FE950;
fma.rn.f64 fd906, fd877, 0dBFEE6F0E134454FF, fd905;
mul.f64 fd907, fd878, 0dBFD3C6EF372FE950;
mul.f64 fd908, fd896, 0dBFEE6F0E134454FF;
sub.f64 fd909, fd907, fd908;
mul.f64 fd910, fd896, 0dBFD3C6EF372FE950;
fma.rn.f64 fd911, fd878, 0dBFEE6F0E134454FF, fd910;
mul.f64 fd912, fd870, 0dBFE9E3779B97F4A8;
mul.f64 fd913, fd888, 0dBFE2CF2304755A5E;
sub.f64 fd914, fd912, fd913;
mul.f64 fd915, fd888, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd916, fd870, 0dBFE2CF2304755A5E, fd915;
add.f64 %1, fd816, fd860;
add.f64 %0, fd812, fd856;
add.f64 %3, fd843, fd901;
add.f64 %2, fd825, fd899;
add.f64 %5, fd851, fd906;
add.f64 %4, fd833, fd904;
add.f64 %7, fd852, fd911;
add.f64 %6, fd834, fd909;
add.f64 %9, fd844, fd916;
add.f64 %8, fd826, fd914;
sub.f64 %11, fd816, fd860;
sub.f64 %10, fd812, fd856;
sub.f64 %13, fd843, fd901;
sub.f64 %12, fd825, fd899;
sub.f64 %15, fd851, fd906;
sub.f64 %14, fd833, fd904;
sub.f64 %17, fd852, fd911;
sub.f64 %16, fd834, fd909;
sub.f64 %19, fd844, fd916;
sub.f64 %18, fd826, fd914;
})"
     : "=d"(rmem[0].x), "=d"(rmem[0].y), "=d"(rmem[1].x), "=d"(rmem[1].y), "=d"(rmem[2].x), "=d"(rmem[2].y), "=d"(rmem[3].x), "=d"(rmem[3].y), "=d"(rmem[4].x), "=d"(rmem[4].y), "=d"(rmem[5].x), "=d"(rmem[5].y), "=d"(rmem[6].x), "=d"(rmem[6].y), "=d"(rmem[7].x), "=d"(rmem[7].y), "=d"(rmem[8].x), "=d"(rmem[8].y), "=d"(rmem[9].x), "=d"(rmem[9].y): "r"(smem), "l"(lut_dp_10_10000), "l"(lut_dp_10_1000), "l"(lut_dp_10_100), "d"(rmem[0].x), "d"(rmem[0].y), "d"(rmem[1].x), "d"(rmem[1].y), "d"(rmem[1].y), "d"(rmem[2].x), "d"(rmem[2].y), "d"(rmem[2].y), "d"(rmem[3].x), "d"(rmem[3].y), "d"(rmem[4].x), "d"(rmem[4].y), "d"(rmem[4].y), "d"(rmem[5].x), "d"(rmem[5].y), "d"(rmem[5].y), "d"(rmem[6].x), "d"(rmem[6].y), "d"(rmem[7].x), "d"(rmem[7].y), "d"(rmem[7].y), "d"(rmem[8].x), "d"(rmem[8].y), "d"(rmem[8].y), "d"(rmem[9].x), "d"(rmem[9].y));
};




template<> __forceinline__ __device__ void cufftdx_private_function<1167, double, 1>(cufftdx::detail::complex<double> *rmem, unsigned smem){

asm volatile (R"({
.reg .b32 r<23>;
.reg .f64 fd<877>;
.reg .b64 rd<17>;
mov.u32 r1, %tid.y;
mov.u32 r2, %20;
mad.lo.s32 r3, r1, 80000, r2;
mov.u32 r4, %tid.x;
add.f64 fd41, %29, %45;
add.f64 fd42, %24, fd41;
add.f64 fd43, %34, %40;
add.f64 fd44, fd43, fd42;
add.f64 fd45, %31, %47;
add.f64 fd46, %25, fd45;
add.f64 fd47, %36, %41;
add.f64 fd48, fd47, fd46;
fma.rn.f64 fd49, fd41, 0d3FD3C6EF372FE950, %24;
mul.f64 fd50, fd43, 0d3FE9E3779B97F4A8;
sub.f64 fd51, fd49, fd50;
sub.f64 fd52, %31, %47;
mul.f64 fd53, fd52, 0d3FEE6F0E134454FF;
sub.f64 fd54, %36, %41;
mul.f64 fd55, fd54, 0dBFE2CF2304755A5E;
sub.f64 fd56, fd55, fd53;
sub.f64 fd57, fd51, fd56;
add.f64 fd58, fd56, fd51;
mul.f64 fd59, fd41, 0d3FE9E3779B97F4A8;
sub.f64 fd60, %24, fd59;
fma.rn.f64 fd61, fd43, 0d3FD3C6EF372FE950, fd60;
mul.f64 fd62, fd52, 0d3FE2CF2304755A5E;
mul.f64 fd63, fd54, 0d3FEE6F0E134454FF;
sub.f64 fd64, fd63, fd62;
sub.f64 fd65, fd61, fd64;
add.f64 fd66, fd64, fd61;
fma.rn.f64 fd67, fd45, 0d3FD3C6EF372FE950, %25;
mul.f64 fd68, fd47, 0d3FE9E3779B97F4A8;
sub.f64 fd69, fd67, fd68;
sub.f64 fd70, %29, %45;
mul.f64 fd71, fd70, 0d3FEE6F0E134454FF;
sub.f64 fd72, %34, %40;
mul.f64 fd73, fd72, 0dBFE2CF2304755A5E;
sub.f64 fd74, fd73, fd71;
add.f64 fd75, fd74, fd69;
sub.f64 fd76, fd69, fd74;
mul.f64 fd77, fd45, 0d3FE9E3779B97F4A8;
sub.f64 fd78, %25, fd77;
fma.rn.f64 fd79, fd47, 0d3FD3C6EF372FE950, fd78;
mul.f64 fd80, fd70, 0d3FE2CF2304755A5E;
mul.f64 fd81, fd72, 0d3FEE6F0E134454FF;
sub.f64 fd82, fd81, fd80;
add.f64 fd83, fd82, fd79;
sub.f64 fd84, fd79, fd82;
add.f64 fd85, %32, %48;
add.f64 fd86, %26, fd85;
add.f64 fd87, %37, %42;
add.f64 fd88, fd87, fd86;
add.f64 fd89, %33, %49;
add.f64 fd90, %28, fd89;
add.f64 fd91, %39, %44;
add.f64 fd92, fd91, fd90;
fma.rn.f64 fd93, fd85, 0d3FD3C6EF372FE950, %26;
mul.f64 fd94, fd87, 0d3FE9E3779B97F4A8;
sub.f64 fd95, fd93, fd94;
sub.f64 fd96, %33, %49;
mul.f64 fd97, fd96, 0d3FEE6F0E134454FF;
sub.f64 fd98, %39, %44;
mul.f64 fd99, fd98, 0dBFE2CF2304755A5E;
sub.f64 fd100, fd99, fd97;
sub.f64 fd101, fd95, fd100;
add.f64 fd102, fd100, fd95;
mul.f64 fd103, fd85, 0d3FE9E3779B97F4A8;
sub.f64 fd104, %26, fd103;
fma.rn.f64 fd105, fd87, 0d3FD3C6EF372FE950, fd104;
mul.f64 fd106, fd96, 0d3FE2CF2304755A5E;
mul.f64 fd107, fd98, 0d3FEE6F0E134454FF;
sub.f64 fd108, fd107, fd106;
sub.f64 fd109, fd105, fd108;
add.f64 fd110, fd108, fd105;
fma.rn.f64 fd111, fd89, 0d3FD3C6EF372FE950, %28;
mul.f64 fd112, fd91, 0d3FE9E3779B97F4A8;
sub.f64 fd113, fd111, fd112;
sub.f64 fd114, %32, %48;
mul.f64 fd115, fd114, 0d3FEE6F0E134454FF;
sub.f64 fd116, %37, %42;
mul.f64 fd117, fd116, 0dBFE2CF2304755A5E;
sub.f64 fd118, fd117, fd115;
add.f64 fd119, fd118, fd113;
sub.f64 fd120, fd113, fd118;
mul.f64 fd121, fd89, 0d3FE9E3779B97F4A8;
sub.f64 fd122, %28, fd121;
fma.rn.f64 fd123, fd91, 0d3FD3C6EF372FE950, fd122;
mul.f64 fd124, fd114, 0d3FE2CF2304755A5E;
mul.f64 fd125, fd116, 0d3FEE6F0E134454FF;
sub.f64 fd126, fd125, fd124;
add.f64 fd127, fd126, fd123;
sub.f64 fd128, fd123, fd126;
mul.f64 fd129, fd101, 0d3FE9E3779B97F4A8;
mul.f64 fd130, fd119, 0dBFE2CF2304755A5E;
sub.f64 fd131, fd129, fd130;
mul.f64 fd132, fd119, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd133, fd101, 0dBFE2CF2304755A5E, fd132;
mul.f64 fd134, fd109, 0d3FD3C6EF372FE950;
mul.f64 fd135, fd127, 0dBFEE6F0E134454FF;
sub.f64 fd136, fd134, fd135;
mul.f64 fd137, fd127, 0d3FD3C6EF372FE950;
fma.rn.f64 fd138, fd109, 0dBFEE6F0E134454FF, fd137;
mul.f64 fd139, fd110, 0dBFD3C6EF372FE950;
mul.f64 fd140, fd128, 0dBFEE6F0E134454FF;
sub.f64 fd141, fd139, fd140;
mul.f64 fd142, fd128, 0dBFD3C6EF372FE950;
fma.rn.f64 fd143, fd110, 0dBFEE6F0E134454FF, fd142;
mul.f64 fd144, fd102, 0dBFE9E3779B97F4A8;
mul.f64 fd145, fd120, 0dBFE2CF2304755A5E;
sub.f64 fd146, fd144, fd145;
mul.f64 fd147, fd120, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd148, fd102, 0dBFE2CF2304755A5E, fd147;
add.f64 fd149, fd44, fd88;
add.f64 fd150, fd48, fd92;
sub.f64 fd151, fd44, fd88;
sub.f64 fd152, fd48, fd92;
add.f64 fd153, fd57, fd131;
add.f64 fd154, fd75, fd133;
sub.f64 fd155, fd57, fd131;
sub.f64 fd156, fd75, fd133;
add.f64 fd157, fd65, fd136;
add.f64 fd158, fd83, fd138;
sub.f64 fd159, fd65, fd136;
sub.f64 fd160, fd83, fd138;
add.f64 fd161, fd66, fd141;
add.f64 fd162, fd84, fd143;
sub.f64 fd163, fd66, fd141;
sub.f64 fd164, fd84, fd143;
add.f64 fd165, fd58, fd146;
add.f64 fd166, fd76, fd148;
sub.f64 fd167, fd58, fd146;
sub.f64 fd168, fd76, fd148;
mul.wide.u32 rd2, r4, 274877907;
shr.u64 rd3, rd2, 38;
cvt.u32.u64 r5, rd3;
mul.lo.s32 r6, r5, 1000;
sub.s32 r7, r4, r6;
mul.wide.u32 rd4, r7, 16;
mov.u64 rd5, %21;
add.s64 rd6, rd5, rd4;
ld.global.v2.f64 {fd169, fd170}, [rd6];
mul.f64 fd173, fd169, fd153;
mul.f64 fd174, fd170, fd154;
sub.f64 fd175, fd173, fd174;
mul.f64 fd176, fd169, fd154;
fma.rn.f64 fd177, fd170, fd153, fd176;
mul.f64 fd178, fd169, fd169;
mul.f64 fd179, fd170, fd170;
sub.f64 fd180, fd178, fd179;
mul.f64 fd181, fd170, fd169;
fma.rn.f64 fd182, fd170, fd169, fd181;
mul.f64 fd183, fd180, fd157;
mul.f64 fd184, fd182, fd158;
sub.f64 fd185, fd183, fd184;
mul.f64 fd186, fd180, fd158;
fma.rn.f64 fd187, fd182, fd157, fd186;
mul.f64 fd188, fd169, fd180;
mul.f64 fd189, fd170, fd182;
sub.f64 fd190, fd188, fd189;
mul.f64 fd191, fd169, fd182;
fma.rn.f64 fd192, fd170, fd180, fd191;
mul.f64 fd193, fd190, fd161;
mul.f64 fd194, fd192, fd162;
sub.f64 fd195, fd193, fd194;
mul.f64 fd196, fd190, fd162;
fma.rn.f64 fd197, fd192, fd161, fd196;
mul.f64 fd198, fd169, fd190;
mul.f64 fd199, fd170, fd192;
sub.f64 fd200, fd198, fd199;
mul.f64 fd201, fd169, fd192;
fma.rn.f64 fd202, fd170, fd190, fd201;
mul.f64 fd203, fd200, fd165;
mul.f64 fd204, fd202, fd166;
sub.f64 fd205, fd203, fd204;
mul.f64 fd206, fd200, fd166;
fma.rn.f64 fd207, fd202, fd165, fd206;
mul.f64 fd208, fd169, fd200;
mul.f64 fd209, fd170, fd202;
sub.f64 fd210, fd208, fd209;
mul.f64 fd211, fd169, fd202;
fma.rn.f64 fd212, fd170, fd200, fd211;
mul.f64 fd213, fd210, fd151;
mul.f64 fd214, fd212, fd152;
sub.f64 fd215, fd213, fd214;
mul.f64 fd216, fd210, fd152;
fma.rn.f64 fd217, fd212, fd151, fd216;
ld.global.v2.f64 {fd218, fd219}, [rd6+16000];
mul.f64 fd222, fd218, fd155;
mul.f64 fd223, fd219, fd156;
sub.f64 fd224, fd222, fd223;
mul.f64 fd225, fd218, fd156;
fma.rn.f64 fd226, fd219, fd155, fd225;
mul.f64 fd227, fd169, fd218;
mul.f64 fd228, fd170, fd219;
sub.f64 fd229, fd227, fd228;
mul.f64 fd230, fd169, fd219;
fma.rn.f64 fd231, fd170, fd218, fd230;
mul.f64 fd232, fd229, fd159;
mul.f64 fd233, fd231, fd160;
sub.f64 fd234, fd232, fd233;
mul.f64 fd235, fd229, fd160;
fma.rn.f64 fd236, fd231, fd159, fd235;
mul.f64 fd237, fd169, fd229;
mul.f64 fd238, fd170, fd231;
sub.f64 fd239, fd237, fd238;
mul.f64 fd240, fd169, fd231;
fma.rn.f64 fd241, fd170, fd229, fd240;
mul.f64 fd242, fd239, fd163;
mul.f64 fd243, fd241, fd164;
sub.f64 fd244, fd242, fd243;
mul.f64 fd245, fd239, fd164;
fma.rn.f64 fd246, fd241, fd163, fd245;
mul.f64 fd247, fd169, fd239;
mul.f64 fd248, fd170, fd241;
sub.f64 fd249, fd247, fd248;
mul.f64 fd250, fd169, fd241;
fma.rn.f64 fd251, fd170, fd239, fd250;
mul.f64 fd252, fd249, fd167;
mul.f64 fd253, fd251, fd168;
sub.f64 fd254, fd252, fd253;
mul.f64 fd255, fd249, fd168;
fma.rn.f64 fd256, fd251, fd167, fd255;
mad.lo.s32 r8, r5, 80000, r3;
barrier.sync 0;
mad.lo.s32 r9, r7, 80, r8;
st.shared.v2.f64 [r9], {fd149, fd175};
st.shared.v2.f64 [r9+16], {fd185, fd195};
st.shared.v2.f64 [r9+32], {fd205, fd215};
st.shared.v2.f64 [r9+48], {fd224, fd234};
st.shared.v2.f64 [r9+64], {fd244, fd254};
barrier.sync 0;
mad.lo.s32 r10, r7, -72, r9;
ld.shared.f64 fd257, [r10];
ld.shared.f64 fd258, [r10+8000];
ld.shared.f64 fd259, [r10+16000];
ld.shared.f64 fd260, [r10+24000];
ld.shared.f64 fd261, [r10+32000];
ld.shared.f64 fd262, [r10+40000];
ld.shared.f64 fd263, [r10+48000];
ld.shared.f64 fd264, [r10+56000];
ld.shared.f64 fd265, [r10+64000];
ld.shared.f64 fd266, [r10+72000];
barrier.sync 0;
st.shared.v2.f64 [r9], {fd150, fd177};
st.shared.v2.f64 [r9+16], {fd187, fd197};
st.shared.v2.f64 [r9+32], {fd207, fd217};
st.shared.v2.f64 [r9+48], {fd226, fd236};
st.shared.v2.f64 [r9+64], {fd246, fd256};
barrier.sync 0;
ld.shared.f64 fd267, [r10];
ld.shared.f64 fd268, [r10+8000];
ld.shared.f64 fd269, [r10+16000];
ld.shared.f64 fd270, [r10+24000];
ld.shared.f64 fd271, [r10+32000];
ld.shared.f64 fd272, [r10+40000];
ld.shared.f64 fd273, [r10+48000];
ld.shared.f64 fd274, [r10+56000];
ld.shared.f64 fd275, [r10+64000];
ld.shared.f64 fd276, [r10+72000];
add.f64 fd277, fd259, fd265;
add.f64 fd278, fd257, fd277;
add.f64 fd279, fd261, fd263;
add.f64 fd280, fd279, fd278;
add.f64 fd281, fd269, fd275;
add.f64 fd282, fd267, fd281;
add.f64 fd283, fd271, fd273;
add.f64 fd284, fd283, fd282;
fma.rn.f64 fd285, fd277, 0d3FD3C6EF372FE950, fd257;
mul.f64 fd286, fd279, 0d3FE9E3779B97F4A8;
sub.f64 fd287, fd285, fd286;
sub.f64 fd288, fd269, fd275;
mul.f64 fd289, fd288, 0d3FEE6F0E134454FF;
sub.f64 fd290, fd271, fd273;
mul.f64 fd291, fd290, 0dBFE2CF2304755A5E;
sub.f64 fd292, fd291, fd289;
sub.f64 fd293, fd287, fd292;
add.f64 fd294, fd292, fd287;
mul.f64 fd295, fd277, 0d3FE9E3779B97F4A8;
sub.f64 fd296, fd257, fd295;
fma.rn.f64 fd297, fd279, 0d3FD3C6EF372FE950, fd296;
mul.f64 fd298, fd288, 0d3FE2CF2304755A5E;
mul.f64 fd299, fd290, 0d3FEE6F0E134454FF;
sub.f64 fd300, fd299, fd298;
sub.f64 fd301, fd297, fd300;
add.f64 fd302, fd300, fd297;
fma.rn.f64 fd303, fd281, 0d3FD3C6EF372FE950, fd267;
mul.f64 fd304, fd283, 0d3FE9E3779B97F4A8;
sub.f64 fd305, fd303, fd304;
sub.f64 fd306, fd259, fd265;
mul.f64 fd307, fd306, 0d3FEE6F0E134454FF;
sub.f64 fd308, fd261, fd263;
mul.f64 fd309, fd308, 0dBFE2CF2304755A5E;
sub.f64 fd310, fd309, fd307;
add.f64 fd311, fd310, fd305;
sub.f64 fd312, fd305, fd310;
mul.f64 fd313, fd281, 0d3FE9E3779B97F4A8;
sub.f64 fd314, fd267, fd313;
fma.rn.f64 fd315, fd283, 0d3FD3C6EF372FE950, fd314;
mul.f64 fd316, fd306, 0d3FE2CF2304755A5E;
mul.f64 fd317, fd308, 0d3FEE6F0E134454FF;
sub.f64 fd318, fd317, fd316;
add.f64 fd319, fd318, fd315;
sub.f64 fd320, fd315, fd318;
add.f64 fd321, fd260, fd266;
add.f64 fd322, fd258, fd321;
add.f64 fd323, fd262, fd264;
add.f64 fd324, fd323, fd322;
add.f64 fd325, fd270, fd276;
add.f64 fd326, fd268, fd325;
add.f64 fd327, fd272, fd274;
add.f64 fd328, fd327, fd326;
fma.rn.f64 fd329, fd321, 0d3FD3C6EF372FE950, fd258;
mul.f64 fd330, fd323, 0d3FE9E3779B97F4A8;
sub.f64 fd331, fd329, fd330;
sub.f64 fd332, fd270, fd276;
mul.f64 fd333, fd332, 0d3FEE6F0E134454FF;
sub.f64 fd334, fd272, fd274;
mul.f64 fd335, fd334, 0dBFE2CF2304755A5E;
sub.f64 fd336, fd335, fd333;
sub.f64 fd337, fd331, fd336;
add.f64 fd338, fd336, fd331;
mul.f64 fd339, fd321, 0d3FE9E3779B97F4A8;
sub.f64 fd340, fd258, fd339;
fma.rn.f64 fd341, fd323, 0d3FD3C6EF372FE950, fd340;
mul.f64 fd342, fd332, 0d3FE2CF2304755A5E;
mul.f64 fd343, fd334, 0d3FEE6F0E134454FF;
sub.f64 fd344, fd343, fd342;
sub.f64 fd345, fd341, fd344;
add.f64 fd346, fd344, fd341;
fma.rn.f64 fd347, fd325, 0d3FD3C6EF372FE950, fd268;
mul.f64 fd348, fd327, 0d3FE9E3779B97F4A8;
sub.f64 fd349, fd347, fd348;
sub.f64 fd350, fd260, fd266;
mul.f64 fd351, fd350, 0d3FEE6F0E134454FF;
sub.f64 fd352, fd262, fd264;
mul.f64 fd353, fd352, 0dBFE2CF2304755A5E;
sub.f64 fd354, fd353, fd351;
add.f64 fd355, fd354, fd349;
sub.f64 fd356, fd349, fd354;
mul.f64 fd357, fd325, 0d3FE9E3779B97F4A8;
sub.f64 fd358, fd268, fd357;
fma.rn.f64 fd359, fd327, 0d3FD3C6EF372FE950, fd358;
mul.f64 fd360, fd350, 0d3FE2CF2304755A5E;
mul.f64 fd361, fd352, 0d3FEE6F0E134454FF;
sub.f64 fd362, fd361, fd360;
add.f64 fd363, fd362, fd359;
sub.f64 fd364, fd359, fd362;
mul.f64 fd365, fd337, 0d3FE9E3779B97F4A8;
mul.f64 fd366, fd355, 0dBFE2CF2304755A5E;
sub.f64 fd367, fd365, fd366;
mul.f64 fd368, fd355, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd369, fd337, 0dBFE2CF2304755A5E, fd368;
mul.f64 fd370, fd345, 0d3FD3C6EF372FE950;
mul.f64 fd371, fd363, 0dBFEE6F0E134454FF;
sub.f64 fd372, fd370, fd371;
mul.f64 fd373, fd363, 0d3FD3C6EF372FE950;
fma.rn.f64 fd374, fd345, 0dBFEE6F0E134454FF, fd373;
mul.f64 fd375, fd346, 0dBFD3C6EF372FE950;
mul.f64 fd376, fd364, 0dBFEE6F0E134454FF;
sub.f64 fd377, fd375, fd376;
mul.f64 fd378, fd364, 0dBFD3C6EF372FE950;
fma.rn.f64 fd379, fd346, 0dBFEE6F0E134454FF, fd378;
mul.f64 fd380, fd338, 0dBFE9E3779B97F4A8;
mul.f64 fd381, fd356, 0dBFE2CF2304755A5E;
sub.f64 fd382, fd380, fd381;
mul.f64 fd383, fd356, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd384, fd338, 0dBFE2CF2304755A5E, fd383;
add.f64 fd385, fd280, fd324;
add.f64 fd386, fd284, fd328;
sub.f64 fd387, fd280, fd324;
sub.f64 fd388, fd284, fd328;
add.f64 fd389, fd293, fd367;
add.f64 fd390, fd311, fd369;
sub.f64 fd391, fd293, fd367;
sub.f64 fd392, fd311, fd369;
add.f64 fd393, fd301, fd372;
add.f64 fd394, fd319, fd374;
sub.f64 fd395, fd301, fd372;
sub.f64 fd396, fd319, fd374;
add.f64 fd397, fd302, fd377;
add.f64 fd398, fd320, fd379;
sub.f64 fd399, fd302, fd377;
sub.f64 fd400, fd320, fd379;
add.f64 fd401, fd294, fd382;
add.f64 fd402, fd312, fd384;
sub.f64 fd403, fd294, fd382;
sub.f64 fd404, fd312, fd384;
mul.wide.u32 rd7, r7, -858993459;
shr.u64 rd8, rd7, 35;
cvt.u32.u64 r11, rd8;
mul.lo.s32 r12, r11, 10;
sub.s32 r13, r7, r12;
mul.wide.u32 rd9, r11, 16;
mov.u64 rd10, %22;
add.s64 rd11, rd10, rd9;
ld.global.v2.f64 {fd405, fd406}, [rd11];
mul.f64 fd409, fd405, fd389;
mul.f64 fd410, fd406, fd390;
sub.f64 fd411, fd409, fd410;
mul.f64 fd412, fd405, fd390;
fma.rn.f64 fd413, fd406, fd389, fd412;
mul.f64 fd414, fd405, fd405;
mul.f64 fd415, fd406, fd406;
sub.f64 fd416, fd414, fd415;
mul.f64 fd417, fd406, fd405;
fma.rn.f64 fd418, fd406, fd405, fd417;
mul.f64 fd419, fd416, fd393;
mul.f64 fd420, fd418, fd394;
sub.f64 fd421, fd419, fd420;
mul.f64 fd422, fd416, fd394;
fma.rn.f64 fd423, fd418, fd393, fd422;
mul.f64 fd424, fd405, fd416;
mul.f64 fd425, fd406, fd418;
sub.f64 fd426, fd424, fd425;
mul.f64 fd427, fd405, fd418;
fma.rn.f64 fd428, fd406, fd416, fd427;
mul.f64 fd429, fd426, fd397;
mul.f64 fd430, fd428, fd398;
sub.f64 fd431, fd429, fd430;
mul.f64 fd432, fd426, fd398;
fma.rn.f64 fd433, fd428, fd397, fd432;
mul.f64 fd434, fd405, fd426;
mul.f64 fd435, fd406, fd428;
sub.f64 fd436, fd434, fd435;
mul.f64 fd437, fd405, fd428;
fma.rn.f64 fd438, fd406, fd426, fd437;
mul.f64 fd439, fd436, fd401;
mul.f64 fd440, fd438, fd402;
sub.f64 fd441, fd439, fd440;
mul.f64 fd442, fd436, fd402;
fma.rn.f64 fd443, fd438, fd401, fd442;
mul.f64 fd444, fd405, fd436;
mul.f64 fd445, fd406, fd438;
sub.f64 fd446, fd444, fd445;
mul.f64 fd447, fd405, fd438;
fma.rn.f64 fd448, fd406, fd436, fd447;
mul.f64 fd449, fd446, fd387;
mul.f64 fd450, fd448, fd388;
sub.f64 fd451, fd449, fd450;
mul.f64 fd452, fd446, fd388;
fma.rn.f64 fd453, fd448, fd387, fd452;
ld.global.v2.f64 {fd454, fd455}, [rd11+1600];
mul.f64 fd458, fd454, fd391;
mul.f64 fd459, fd455, fd392;
sub.f64 fd460, fd458, fd459;
mul.f64 fd461, fd454, fd392;
fma.rn.f64 fd462, fd455, fd391, fd461;
mul.f64 fd463, fd405, fd454;
mul.f64 fd464, fd406, fd455;
sub.f64 fd465, fd463, fd464;
mul.f64 fd466, fd405, fd455;
fma.rn.f64 fd467, fd406, fd454, fd466;
mul.f64 fd468, fd465, fd395;
mul.f64 fd469, fd467, fd396;
sub.f64 fd470, fd468, fd469;
mul.f64 fd471, fd465, fd396;
fma.rn.f64 fd472, fd467, fd395, fd471;
mul.f64 fd473, fd405, fd465;
mul.f64 fd474, fd406, fd467;
sub.f64 fd475, fd473, fd474;
mul.f64 fd476, fd405, fd467;
fma.rn.f64 fd477, fd406, fd465, fd476;
mul.f64 fd478, fd475, fd399;
mul.f64 fd479, fd477, fd400;
sub.f64 fd480, fd478, fd479;
mul.f64 fd481, fd475, fd400;
fma.rn.f64 fd482, fd477, fd399, fd481;
mul.f64 fd483, fd405, fd475;
mul.f64 fd484, fd406, fd477;
sub.f64 fd485, fd483, fd484;
mul.f64 fd486, fd405, fd477;
fma.rn.f64 fd487, fd406, fd475, fd486;
mul.f64 fd488, fd485, fd403;
mul.f64 fd489, fd487, fd404;
sub.f64 fd490, fd488, fd489;
mul.f64 fd491, fd485, fd404;
fma.rn.f64 fd492, fd487, fd403, fd491;
shl.b32 r14, r13, 3;
add.s32 r15, r8, r14;
barrier.sync 0;
mad.lo.s32 r16, r11, 800, r15;
st.shared.f64 [r16], fd385;
st.shared.f64 [r16+80], fd411;
st.shared.f64 [r16+160], fd421;
st.shared.f64 [r16+240], fd431;
st.shared.f64 [r16+320], fd441;
st.shared.f64 [r16+400], fd451;
st.shared.f64 [r16+480], fd460;
st.shared.f64 [r16+560], fd470;
st.shared.f64 [r16+640], fd480;
st.shared.f64 [r16+720], fd490;
barrier.sync 0;
ld.shared.f64 fd493, [r10];
ld.shared.f64 fd494, [r10+8000];
ld.shared.f64 fd495, [r10+16000];
ld.shared.f64 fd496, [r10+24000];
ld.shared.f64 fd497, [r10+32000];
ld.shared.f64 fd498, [r10+40000];
ld.shared.f64 fd499, [r10+48000];
ld.shared.f64 fd500, [r10+56000];
ld.shared.f64 fd501, [r10+64000];
ld.shared.f64 fd502, [r10+72000];
barrier.sync 0;
st.shared.f64 [r16], fd386;
st.shared.f64 [r16+80], fd413;
st.shared.f64 [r16+160], fd423;
st.shared.f64 [r16+240], fd433;
st.shared.f64 [r16+320], fd443;
st.shared.f64 [r16+400], fd453;
st.shared.f64 [r16+480], fd462;
st.shared.f64 [r16+560], fd472;
st.shared.f64 [r16+640], fd482;
st.shared.f64 [r16+720], fd492;
barrier.sync 0;
ld.shared.f64 fd503, [r10];
ld.shared.f64 fd504, [r10+8000];
ld.shared.f64 fd505, [r10+16000];
ld.shared.f64 fd506, [r10+24000];
ld.shared.f64 fd507, [r10+32000];
ld.shared.f64 fd508, [r10+40000];
ld.shared.f64 fd509, [r10+48000];
ld.shared.f64 fd510, [r10+56000];
ld.shared.f64 fd511, [r10+64000];
ld.shared.f64 fd512, [r10+72000];
add.f64 fd513, fd495, fd501;
add.f64 fd514, fd493, fd513;
add.f64 fd515, fd497, fd499;
add.f64 fd516, fd515, fd514;
add.f64 fd517, fd505, fd511;
add.f64 fd518, fd503, fd517;
add.f64 fd519, fd507, fd509;
add.f64 fd520, fd519, fd518;
fma.rn.f64 fd521, fd513, 0d3FD3C6EF372FE950, fd493;
mul.f64 fd522, fd515, 0d3FE9E3779B97F4A8;
sub.f64 fd523, fd521, fd522;
sub.f64 fd524, fd505, fd511;
mul.f64 fd525, fd524, 0d3FEE6F0E134454FF;
sub.f64 fd526, fd507, fd509;
mul.f64 fd527, fd526, 0dBFE2CF2304755A5E;
sub.f64 fd528, fd527, fd525;
sub.f64 fd529, fd523, fd528;
add.f64 fd530, fd528, fd523;
mul.f64 fd531, fd513, 0d3FE9E3779B97F4A8;
sub.f64 fd532, fd493, fd531;
fma.rn.f64 fd533, fd515, 0d3FD3C6EF372FE950, fd532;
mul.f64 fd534, fd524, 0d3FE2CF2304755A5E;
mul.f64 fd535, fd526, 0d3FEE6F0E134454FF;
sub.f64 fd536, fd535, fd534;
sub.f64 fd537, fd533, fd536;
add.f64 fd538, fd536, fd533;
fma.rn.f64 fd539, fd517, 0d3FD3C6EF372FE950, fd503;
mul.f64 fd540, fd519, 0d3FE9E3779B97F4A8;
sub.f64 fd541, fd539, fd540;
sub.f64 fd542, fd495, fd501;
mul.f64 fd543, fd542, 0d3FEE6F0E134454FF;
sub.f64 fd544, fd497, fd499;
mul.f64 fd545, fd544, 0dBFE2CF2304755A5E;
sub.f64 fd546, fd545, fd543;
add.f64 fd547, fd546, fd541;
sub.f64 fd548, fd541, fd546;
mul.f64 fd549, fd517, 0d3FE9E3779B97F4A8;
sub.f64 fd550, fd503, fd549;
fma.rn.f64 fd551, fd519, 0d3FD3C6EF372FE950, fd550;
mul.f64 fd552, fd542, 0d3FE2CF2304755A5E;
mul.f64 fd553, fd544, 0d3FEE6F0E134454FF;
sub.f64 fd554, fd553, fd552;
add.f64 fd555, fd554, fd551;
sub.f64 fd556, fd551, fd554;
add.f64 fd557, fd496, fd502;
add.f64 fd558, fd494, fd557;
add.f64 fd559, fd498, fd500;
add.f64 fd560, fd559, fd558;
add.f64 fd561, fd506, fd512;
add.f64 fd562, fd504, fd561;
add.f64 fd563, fd508, fd510;
add.f64 fd564, fd563, fd562;
fma.rn.f64 fd565, fd557, 0d3FD3C6EF372FE950, fd494;
mul.f64 fd566, fd559, 0d3FE9E3779B97F4A8;
sub.f64 fd567, fd565, fd566;
sub.f64 fd568, fd506, fd512;
mul.f64 fd569, fd568, 0d3FEE6F0E134454FF;
sub.f64 fd570, fd508, fd510;
mul.f64 fd571, fd570, 0dBFE2CF2304755A5E;
sub.f64 fd572, fd571, fd569;
sub.f64 fd573, fd567, fd572;
add.f64 fd574, fd572, fd567;
mul.f64 fd575, fd557, 0d3FE9E3779B97F4A8;
sub.f64 fd576, fd494, fd575;
fma.rn.f64 fd577, fd559, 0d3FD3C6EF372FE950, fd576;
mul.f64 fd578, fd568, 0d3FE2CF2304755A5E;
mul.f64 fd579, fd570, 0d3FEE6F0E134454FF;
sub.f64 fd580, fd579, fd578;
sub.f64 fd581, fd577, fd580;
add.f64 fd582, fd580, fd577;
fma.rn.f64 fd583, fd561, 0d3FD3C6EF372FE950, fd504;
mul.f64 fd584, fd563, 0d3FE9E3779B97F4A8;
sub.f64 fd585, fd583, fd584;
sub.f64 fd586, fd496, fd502;
mul.f64 fd587, fd586, 0d3FEE6F0E134454FF;
sub.f64 fd588, fd498, fd500;
mul.f64 fd589, fd588, 0dBFE2CF2304755A5E;
sub.f64 fd590, fd589, fd587;
add.f64 fd591, fd590, fd585;
sub.f64 fd592, fd585, fd590;
mul.f64 fd593, fd561, 0d3FE9E3779B97F4A8;
sub.f64 fd594, fd504, fd593;
fma.rn.f64 fd595, fd563, 0d3FD3C6EF372FE950, fd594;
mul.f64 fd596, fd586, 0d3FE2CF2304755A5E;
mul.f64 fd597, fd588, 0d3FEE6F0E134454FF;
sub.f64 fd598, fd597, fd596;
add.f64 fd599, fd598, fd595;
sub.f64 fd600, fd595, fd598;
mul.f64 fd601, fd573, 0d3FE9E3779B97F4A8;
mul.f64 fd602, fd591, 0dBFE2CF2304755A5E;
sub.f64 fd603, fd601, fd602;
mul.f64 fd604, fd591, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd605, fd573, 0dBFE2CF2304755A5E, fd604;
mul.f64 fd606, fd581, 0d3FD3C6EF372FE950;
mul.f64 fd607, fd599, 0dBFEE6F0E134454FF;
sub.f64 fd608, fd606, fd607;
mul.f64 fd609, fd599, 0d3FD3C6EF372FE950;
fma.rn.f64 fd610, fd581, 0dBFEE6F0E134454FF, fd609;
mul.f64 fd611, fd582, 0dBFD3C6EF372FE950;
mul.f64 fd612, fd600, 0dBFEE6F0E134454FF;
sub.f64 fd613, fd611, fd612;
mul.f64 fd614, fd600, 0dBFD3C6EF372FE950;
fma.rn.f64 fd615, fd582, 0dBFEE6F0E134454FF, fd614;
mul.f64 fd616, fd574, 0dBFE9E3779B97F4A8;
mul.f64 fd617, fd592, 0dBFE2CF2304755A5E;
sub.f64 fd618, fd616, fd617;
mul.f64 fd619, fd592, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd620, fd574, 0dBFE2CF2304755A5E, fd619;
add.f64 fd621, fd516, fd560;
add.f64 fd622, fd520, fd564;
sub.f64 fd623, fd516, fd560;
sub.f64 fd624, fd520, fd564;
add.f64 fd625, fd529, fd603;
add.f64 fd626, fd547, fd605;
sub.f64 fd627, fd529, fd603;
sub.f64 fd628, fd547, fd605;
add.f64 fd629, fd537, fd608;
add.f64 fd630, fd555, fd610;
sub.f64 fd631, fd537, fd608;
sub.f64 fd632, fd555, fd610;
add.f64 fd633, fd538, fd613;
add.f64 fd634, fd556, fd615;
sub.f64 fd635, fd538, fd613;
sub.f64 fd636, fd556, fd615;
add.f64 fd637, fd530, fd618;
add.f64 fd638, fd548, fd620;
sub.f64 fd639, fd530, fd618;
sub.f64 fd640, fd548, fd620;
mul.wide.u32 rd12, r7, 1374389535;
shr.u64 rd13, rd12, 37;
cvt.u32.u64 r17, rd13;
mul.lo.s32 r18, r17, 100;
sub.s32 r19, r7, r18;
mul.wide.u32 rd14, r17, 16;
mov.u64 rd15, %23;
add.s64 rd16, rd15, rd14;
ld.global.v2.f64 {fd641, fd642}, [rd16];
mul.f64 fd645, fd641, fd625;
mul.f64 fd646, fd642, fd626;
sub.f64 fd647, fd645, fd646;
mul.f64 fd648, fd641, fd626;
fma.rn.f64 fd649, fd642, fd625, fd648;
mul.f64 fd650, fd641, fd641;
mul.f64 fd651, fd642, fd642;
sub.f64 fd652, fd650, fd651;
mul.f64 fd653, fd642, fd641;
fma.rn.f64 fd654, fd642, fd641, fd653;
mul.f64 fd655, fd652, fd629;
mul.f64 fd656, fd654, fd630;
sub.f64 fd657, fd655, fd656;
mul.f64 fd658, fd652, fd630;
fma.rn.f64 fd659, fd654, fd629, fd658;
mul.f64 fd660, fd641, fd652;
mul.f64 fd661, fd642, fd654;
sub.f64 fd662, fd660, fd661;
mul.f64 fd663, fd641, fd654;
fma.rn.f64 fd664, fd642, fd652, fd663;
mul.f64 fd665, fd662, fd633;
mul.f64 fd666, fd664, fd634;
sub.f64 fd667, fd665, fd666;
mul.f64 fd668, fd662, fd634;
fma.rn.f64 fd669, fd664, fd633, fd668;
mul.f64 fd670, fd641, fd662;
mul.f64 fd671, fd642, fd664;
sub.f64 fd672, fd670, fd671;
mul.f64 fd673, fd641, fd664;
fma.rn.f64 fd674, fd642, fd662, fd673;
mul.f64 fd675, fd672, fd637;
mul.f64 fd676, fd674, fd638;
sub.f64 fd677, fd675, fd676;
mul.f64 fd678, fd672, fd638;
fma.rn.f64 fd679, fd674, fd637, fd678;
mul.f64 fd680, fd641, fd672;
mul.f64 fd681, fd642, fd674;
sub.f64 fd682, fd680, fd681;
mul.f64 fd683, fd641, fd674;
fma.rn.f64 fd684, fd642, fd672, fd683;
mul.f64 fd685, fd682, fd623;
mul.f64 fd686, fd684, fd624;
sub.f64 fd687, fd685, fd686;
mul.f64 fd688, fd682, fd624;
fma.rn.f64 fd689, fd684, fd623, fd688;
ld.global.v2.f64 {fd690, fd691}, [rd16+160];
mul.f64 fd694, fd690, fd627;
mul.f64 fd695, fd691, fd628;
sub.f64 fd696, fd694, fd695;
mul.f64 fd697, fd690, fd628;
fma.rn.f64 fd698, fd691, fd627, fd697;
mul.f64 fd699, fd641, fd690;
mul.f64 fd700, fd642, fd691;
sub.f64 fd701, fd699, fd700;
mul.f64 fd702, fd641, fd691;
fma.rn.f64 fd703, fd642, fd690, fd702;
mul.f64 fd704, fd701, fd631;
mul.f64 fd705, fd703, fd632;
sub.f64 fd706, fd704, fd705;
mul.f64 fd707, fd701, fd632;
fma.rn.f64 fd708, fd703, fd631, fd707;
mul.f64 fd709, fd641, fd701;
mul.f64 fd710, fd642, fd703;
sub.f64 fd711, fd709, fd710;
mul.f64 fd712, fd641, fd703;
fma.rn.f64 fd713, fd642, fd701, fd712;
mul.f64 fd714, fd711, fd635;
mul.f64 fd715, fd713, fd636;
sub.f64 fd716, fd714, fd715;
mul.f64 fd717, fd711, fd636;
fma.rn.f64 fd718, fd713, fd635, fd717;
mul.f64 fd719, fd641, fd711;
mul.f64 fd720, fd642, fd713;
sub.f64 fd721, fd719, fd720;
mul.f64 fd722, fd641, fd713;
fma.rn.f64 fd723, fd642, fd711, fd722;
mul.f64 fd724, fd721, fd639;
mul.f64 fd725, fd723, fd640;
sub.f64 fd726, fd724, fd725;
mul.f64 fd727, fd721, fd640;
fma.rn.f64 fd728, fd723, fd639, fd727;
shl.b32 r20, r19, 3;
add.s32 r21, r8, r20;
barrier.sync 0;
mad.lo.s32 r22, r17, 8000, r21;
st.shared.f64 [r22], fd621;
st.shared.f64 [r22+800], fd647;
st.shared.f64 [r22+1600], fd657;
st.shared.f64 [r22+2400], fd667;
st.shared.f64 [r22+3200], fd677;
st.shared.f64 [r22+4000], fd687;
st.shared.f64 [r22+4800], fd696;
st.shared.f64 [r22+5600], fd706;
st.shared.f64 [r22+6400], fd716;
st.shared.f64 [r22+7200], fd726;
barrier.sync 0;
ld.shared.f64 fd729, [r10];
ld.shared.f64 fd730, [r10+8000];
ld.shared.f64 fd731, [r10+16000];
ld.shared.f64 fd732, [r10+24000];
ld.shared.f64 fd733, [r10+32000];
ld.shared.f64 fd734, [r10+40000];
ld.shared.f64 fd735, [r10+48000];
ld.shared.f64 fd736, [r10+56000];
ld.shared.f64 fd737, [r10+64000];
ld.shared.f64 fd738, [r10+72000];
barrier.sync 0;
st.shared.f64 [r22], fd622;
st.shared.f64 [r22+800], fd649;
st.shared.f64 [r22+1600], fd659;
st.shared.f64 [r22+2400], fd669;
st.shared.f64 [r22+3200], fd679;
st.shared.f64 [r22+4000], fd689;
st.shared.f64 [r22+4800], fd698;
st.shared.f64 [r22+5600], fd708;
st.shared.f64 [r22+6400], fd718;
st.shared.f64 [r22+7200], fd728;
barrier.sync 0;
ld.shared.f64 fd739, [r10];
ld.shared.f64 fd740, [r10+8000];
ld.shared.f64 fd741, [r10+16000];
ld.shared.f64 fd742, [r10+24000];
ld.shared.f64 fd743, [r10+32000];
ld.shared.f64 fd744, [r10+40000];
ld.shared.f64 fd745, [r10+48000];
ld.shared.f64 fd746, [r10+56000];
ld.shared.f64 fd747, [r10+64000];
ld.shared.f64 fd748, [r10+72000];
add.f64 fd749, fd731, fd737;
add.f64 fd750, fd729, fd749;
add.f64 fd751, fd733, fd735;
add.f64 fd752, fd751, fd750;
add.f64 fd753, fd741, fd747;
add.f64 fd754, fd739, fd753;
add.f64 fd755, fd743, fd745;
add.f64 fd756, fd755, fd754;
fma.rn.f64 fd757, fd749, 0d3FD3C6EF372FE950, fd729;
mul.f64 fd758, fd751, 0d3FE9E3779B97F4A8;
sub.f64 fd759, fd757, fd758;
sub.f64 fd760, fd741, fd747;
mul.f64 fd761, fd760, 0d3FEE6F0E134454FF;
sub.f64 fd762, fd743, fd745;
mul.f64 fd763, fd762, 0dBFE2CF2304755A5E;
sub.f64 fd764, fd763, fd761;
sub.f64 fd765, fd759, fd764;
add.f64 fd766, fd764, fd759;
mul.f64 fd767, fd749, 0d3FE9E3779B97F4A8;
sub.f64 fd768, fd729, fd767;
fma.rn.f64 fd769, fd751, 0d3FD3C6EF372FE950, fd768;
mul.f64 fd770, fd760, 0d3FE2CF2304755A5E;
mul.f64 fd771, fd762, 0d3FEE6F0E134454FF;
sub.f64 fd772, fd771, fd770;
sub.f64 fd773, fd769, fd772;
add.f64 fd774, fd772, fd769;
fma.rn.f64 fd775, fd753, 0d3FD3C6EF372FE950, fd739;
mul.f64 fd776, fd755, 0d3FE9E3779B97F4A8;
sub.f64 fd777, fd775, fd776;
sub.f64 fd778, fd731, fd737;
mul.f64 fd779, fd778, 0d3FEE6F0E134454FF;
sub.f64 fd780, fd733, fd735;
mul.f64 fd781, fd780, 0dBFE2CF2304755A5E;
sub.f64 fd782, fd781, fd779;
add.f64 fd783, fd782, fd777;
sub.f64 fd784, fd777, fd782;
mul.f64 fd785, fd753, 0d3FE9E3779B97F4A8;
sub.f64 fd786, fd739, fd785;
fma.rn.f64 fd787, fd755, 0d3FD3C6EF372FE950, fd786;
mul.f64 fd788, fd778, 0d3FE2CF2304755A5E;
mul.f64 fd789, fd780, 0d3FEE6F0E134454FF;
sub.f64 fd790, fd789, fd788;
add.f64 fd791, fd790, fd787;
sub.f64 fd792, fd787, fd790;
add.f64 fd793, fd732, fd738;
add.f64 fd794, fd730, fd793;
add.f64 fd795, fd734, fd736;
add.f64 fd796, fd795, fd794;
add.f64 fd797, fd742, fd748;
add.f64 fd798, fd740, fd797;
add.f64 fd799, fd744, fd746;
add.f64 fd800, fd799, fd798;
fma.rn.f64 fd801, fd793, 0d3FD3C6EF372FE950, fd730;
mul.f64 fd802, fd795, 0d3FE9E3779B97F4A8;
sub.f64 fd803, fd801, fd802;
sub.f64 fd804, fd742, fd748;
mul.f64 fd805, fd804, 0d3FEE6F0E134454FF;
sub.f64 fd806, fd744, fd746;
mul.f64 fd807, fd806, 0dBFE2CF2304755A5E;
sub.f64 fd808, fd807, fd805;
sub.f64 fd809, fd803, fd808;
add.f64 fd810, fd808, fd803;
mul.f64 fd811, fd793, 0d3FE9E3779B97F4A8;
sub.f64 fd812, fd730, fd811;
fma.rn.f64 fd813, fd795, 0d3FD3C6EF372FE950, fd812;
mul.f64 fd814, fd804, 0d3FE2CF2304755A5E;
mul.f64 fd815, fd806, 0d3FEE6F0E134454FF;
sub.f64 fd816, fd815, fd814;
sub.f64 fd817, fd813, fd816;
add.f64 fd818, fd816, fd813;
fma.rn.f64 fd819, fd797, 0d3FD3C6EF372FE950, fd740;
mul.f64 fd820, fd799, 0d3FE9E3779B97F4A8;
sub.f64 fd821, fd819, fd820;
sub.f64 fd822, fd732, fd738;
mul.f64 fd823, fd822, 0d3FEE6F0E134454FF;
sub.f64 fd824, fd734, fd736;
mul.f64 fd825, fd824, 0dBFE2CF2304755A5E;
sub.f64 fd826, fd825, fd823;
add.f64 fd827, fd826, fd821;
sub.f64 fd828, fd821, fd826;
mul.f64 fd829, fd797, 0d3FE9E3779B97F4A8;
sub.f64 fd830, fd740, fd829;
fma.rn.f64 fd831, fd799, 0d3FD3C6EF372FE950, fd830;
mul.f64 fd832, fd822, 0d3FE2CF2304755A5E;
mul.f64 fd833, fd824, 0d3FEE6F0E134454FF;
sub.f64 fd834, fd833, fd832;
add.f64 fd835, fd834, fd831;
sub.f64 fd836, fd831, fd834;
mul.f64 fd837, fd809, 0d3FE9E3779B97F4A8;
mul.f64 fd838, fd827, 0dBFE2CF2304755A5E;
sub.f64 fd839, fd837, fd838;
mul.f64 fd840, fd827, 0d3FE9E3779B97F4A8;
fma.rn.f64 fd841, fd809, 0dBFE2CF2304755A5E, fd840;
mul.f64 fd842, fd817, 0d3FD3C6EF372FE950;
mul.f64 fd843, fd835, 0dBFEE6F0E134454FF;
sub.f64 fd844, fd842, fd843;
mul.f64 fd845, fd835, 0d3FD3C6EF372FE950;
fma.rn.f64 fd846, fd817, 0dBFEE6F0E134454FF, fd845;
mul.f64 fd847, fd818, 0dBFD3C6EF372FE950;
mul.f64 fd848, fd836, 0dBFEE6F0E134454FF;
sub.f64 fd849, fd847, fd848;
mul.f64 fd850, fd836, 0dBFD3C6EF372FE950;
fma.rn.f64 fd851, fd818, 0dBFEE6F0E134454FF, fd850;
mul.f64 fd852, fd810, 0dBFE9E3779B97F4A8;
mul.f64 fd853, fd828, 0dBFE2CF2304755A5E;
sub.f64 fd854, fd852, fd853;
mul.f64 fd855, fd828, 0dBFE9E3779B97F4A8;
fma.rn.f64 fd856, fd810, 0dBFE2CF2304755A5E, fd855;
add.f64 %0, fd752, fd796;
add.f64 %1, fd756, fd800;
add.f64 %3, fd783, fd841;
add.f64 %2, fd765, fd839;
add.f64 %5, fd791, fd846;
add.f64 %4, fd773, fd844;
add.f64 %7, fd792, fd851;
add.f64 %6, fd774, fd849;
add.f64 %9, fd784, fd856;
add.f64 %8, fd766, fd854;
sub.f64 %10, fd752, fd796;
sub.f64 %11, fd756, fd800;
sub.f64 %13, fd783, fd841;
sub.f64 %12, fd765, fd839;
sub.f64 %15, fd791, fd846;
sub.f64 %14, fd773, fd844;
sub.f64 %17, fd792, fd851;
sub.f64 %16, fd774, fd849;
sub.f64 %19, fd784, fd856;
sub.f64 %18, fd766, fd854;
})"
     : "=d"(rmem[0].x), "=d"(rmem[0].y), "=d"(rmem[1].x), "=d"(rmem[1].y), "=d"(rmem[2].x), "=d"(rmem[2].y), "=d"(rmem[3].x), "=d"(rmem[3].y), "=d"(rmem[4].x), "=d"(rmem[4].y), "=d"(rmem[5].x), "=d"(rmem[5].y), "=d"(rmem[6].x), "=d"(rmem[6].y), "=d"(rmem[7].x), "=d"(rmem[7].y), "=d"(rmem[8].x), "=d"(rmem[8].y), "=d"(rmem[9].x), "=d"(rmem[9].y): "r"(smem), "l"(lut_dp_10_10000), "l"(lut_dp_10_1000), "l"(lut_dp_10_100), "d"(rmem[0].x), "d"(rmem[0].y), "d"(rmem[1].x), "d"(rmem[1].y), "d"(rmem[1].y), "d"(rmem[2].x), "d"(rmem[2].y), "d"(rmem[2].y), "d"(rmem[3].x), "d"(rmem[3].y), "d"(rmem[4].x), "d"(rmem[4].y), "d"(rmem[4].y), "d"(rmem[5].x), "d"(rmem[5].y), "d"(rmem[5].y), "d"(rmem[6].x), "d"(rmem[6].y), "d"(rmem[7].x), "d"(rmem[7].y), "d"(rmem[7].y), "d"(rmem[8].x), "d"(rmem[8].y), "d"(rmem[8].y), "d"(rmem[9].x), "d"(rmem[9].y));
};


#endif
